The present method relates to a system and a method for processing data packets, and in particular to a new manner of handling flow control in networking elements.
A problem encountered in networking elements when the transmission rate is increased is seen in e.g. an Ethernet where, at 10 Gbit/s, each bit is 2 cm long on the transmission fiber. Thus, a 40 km fiber actually holds 2 Mbit at any point in time. According to the standard of flow control, this will mean that when the receiver's buffer gets too full, the receiver transmits a flow control stop signal to the transmitter. In a worst-case scenario, the transmitter has just started transmitting a maximum frame (1522 bytes) when receiving the FC stop signal. However, before the transmitter stops transmitting, the receiver still has to have a buffer for holding a total of 2×2 Mbit+2 maximum frames−that is, a total of approx. 1 Mbyte. This is a fact due to the chosen implementation of the flow control.
When the receiver reopens transmission, the transmitter will have buffered an amount of data received during the transmission pause. In prior art transmitters, this data will be stored in order and output in order. This, naturally, means that Quality of Service is not provided and that there is a risk of loosing high priority packets due to the buffers being full or due to ageing.
This problem is caused by the prior art transmitters—or transmitting parts of standard network equipment—having the buffers placed before the analyzers.